package com.hxy.moobile.controller;

import com.alibaba.dubbo.config.annotation.Reference;
import com.hxy.travel.constant.MessageConstant;
import com.hxy.travel.constant.RedisConstant;
import com.hxy.travel.entity.PageResult;
import com.hxy.travel.entity.QueryPageBean;
import com.hxy.travel.entity.Result;
import com.hxy.travel.pojo.Setmeal;
import com.hxy.travel.service.SetmealService;
import com.hxy.travel.service.TravelGroupService;
import com.hxy.travel.utils.QiniuUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import redis.clients.jedis.JedisPool;

import java.io.IOException;
import java.util.List;
import java.util.UUID;

@RestController
@RequestMapping("/setmeal")
public class SetmealController {

     @Reference
     private SetmealService setmealService;

//    @PostMapping("upload.do")
//    public Result upload(MultipartFile imgFile){
//        try {
//            String originalFilename = imgFile.getOriginalFilename();
//
//            String suffix =originalFilename.substring(originalFilename.lastIndexOf("."));
//
//            String fileName = UUID.randomUUID().toString() + suffix;
//
//            QiniuUtils.upload2Qiniu(imgFile.getBytes(),fileName);
//
//            jedisPool.getResource().sadd(RedisConstant.SETMEAL_PIC_RESOURCES,fileName);
//
//            return Result.data(fileName,MessageConstant.PIC_UPLOAD_SUCCESS);
//        }catch (IOException e){
//            e.printStackTrace();
//        }
//        return Result.fail(MessageConstant.PIC_UPLOAD_FAIL);
//    }
//
//    @PostMapping("/add.do")
//    public Result add(@RequestBody Setmeal setmeal, Integer[] travelgroupIds){
//
//        setmealService.addSetmealAndIds(setmeal,travelgroupIds);
//
//        return Result.ok(MessageConstant.ADD_SETMEAL_SUCCESS);
//
//    }
    @PostMapping("/getSetmeal.do")
    public  Result selectSetmeal(){

        List<Setmeal> setmealList = setmealService.selectSetmeal();

        return Result.data(setmealList, MessageConstant.QUERY_SETMEAL_SUCCESS);

    }
    @PostMapping("/findById.do")
    public Result findById( String id ){
        Setmeal setmeal = setmealService.findById(id);
        return Result.data(setmeal,MessageConstant.QUERY_SETMEAL_SUCCESS);
    }
//    @GetMapping("/delete.do")
//    public Result delete(Integer id){
//
//        try {
//            travelItemService.deleteTravelItemById(id);
//            return Result.ok(MessageConstant.DELETE_TRAVELITEM_SUCCESS);
//        }catch (Exception e){
//            e.printStackTrace();
//            return Result.ok(MessageConstant.DELETE_TRAVELITEM_FAIL);
//        }
//
//    }
//    @GetMapping("/selectById.do")
//    public Result selectById(Integer id){
//
//      Setmeal setmeal=setmealService.selectById(id);
//
//      return Result.data(setmeal);
//
//    }

//    @GetMapping("/selectTravelGroupBySetmealId.do")
//    public Result selectTravelGroupBySetmealId( Integer id ) {
//        List<Integer> list = travelGroupService.selectTravelGroupBySetmealId(id);
//        return Result.data(list);
//    }
//
//    @PostMapping("/edit.do")
//    public Result edit( @RequestBody Setmeal setmeal ,Integer[] travelgroupIds ) {
//
//        setmealService.editSetmeal(setmeal, travelgroupIds);
//
//        return Result.ok(MessageConstant.EDIT_TRAVELGROUP_SUCCESS);
//    }
//    @GetMapping("/delete.do")
//    public Result delete( Integer id ){
//        try {
//            travelGroupService.deleteTravelItemById(id);
//        } catch ( RuntimeException e ){
//            e.printStackTrace();
//            return Result.fail(e.getMessage());
//        } catch ( Exception e) {
//            e.printStackTrace();
//            return Result.ok(MessageConstant.DELETE_TRAVELGROUP_FAIL);
//        }
//        return Result.fail(MessageConstant.DELETE_TRAVELGROUP_SUCCESS);
//    }
//    @GetMapping("/findAll.do") public Result findAll(){
//        List<TravelGroup> list = travelGroupService.findAll();
//        return Result.data(list,MessageConstant.QUERY_TRAVELGROUP_SUCCESS);
//    }


//    @PostMapping("/edit.do")
//    public Result edit(@RequestBody TravelItem travelItem){
//
//        travelItemService.editTravelItem(travelItem);
//
//
//        return Result.ok(MessageConstant.EDIT_TRAVELITEM_SUCCESS);
//
//    }
//

}
